// import router from './router'

// import 'nprogress/nprogress.css' // progress bar style
// import { asyncRoutes } from '@/router/index'
// // import { title } from './settings'
// import store from './store'

// // 白名单
// const widthList = ['/login', '/404']
// router.beforeEach(async(to, from, next) => {
//   // 获取token
//   const token = store.state.user.token
//   if (token) {
//     // 是否要登录
//     if (to.path === '/login') {
//       console.log('已经进入主页,不能', to.path)
//       // 进入到首页
//       next('/')
//     } else {
//       if (!store.state.user.UserInfo.userId) {
//         // 接收 user 里面 actions的值
//         const res = await store.dispatch('user/getUserProfile')

//         const menus = res.data.roles.menus
//         const filterRoutes = asyncRoutes.filter(item => {
//           const name = item.children[0].name
//           return menus.includes(name)
//         })
//         // 根据权限 信息动态添加路由
//         filterRoutes.push({ path: '*', redirect: '/404', hidden: true })
//         // 可以让我们 在地址栏 访问页面

//         // 但是 并不能让我们 在菜单里面看到
//         router.addRoutes(filterRoutes)
//         // 生成左侧菜单 要去vuex里面拿
//         // 把 动态的路由 添加到 Vuex 里面
//         store.commit('menu/updateMenuList', filterRoutes)
//         next({
//           ...to,
//           replace: true
//         })
//       } else {
//         next()
//       }
//       // 获取个人信息
//       // 放行

//       // NProgress.done()
//     }
//   } else {
//     // 是否是 白名单
//     if (widthList.includes(to.path)) {
//       // 是就放行
//       next()
//     } else {
//       // 不是就跳转到 登录页
//       next('/login')
//     }
//   }
// })

